1. Field of the Invention
This invention relates to wireless communication systems and, more particularly, to a digital modulation system that uses an extended code set to encode information.
2. Description of Related Art
A wireless communications channel can rarely be modeled as purely line-of-site. Therefore, one must consider the many independent paths that are the result of scattering and reflection of a signal between the many objects that lie between and around the transmitting station and the receiving station. The scattering and reflection of the signal creates many different “copies” of the transmitted signal (“multipath signals”) arriving at the receiving station with various amounts of delay, phase shift and attenuation. As a result, the received signal is made up of the sum of many signals, each traveling over a separate path. Since these path lengths are not equal, the information carried over the radio link will experience a spread in delay as it travels between the transmitting station and the receiving station. The amount of time dispersion between the earliest received copy of the transmitted signal and the latest arriving copy having a signal strength above a certain level is often referred to as delay spread. Delay spread can cause intersymbol interference (ISI). In addition to delay spread, the same multipath environment causes severe local variations in the received signal strength as the multipath signals are added constructively and destructively at the receiving antenna. A multipath component is the combination of multipath signals arriving at the receiver at nearly the same delay. These variations in the amplitude of the multipath components is generally referred to as Rayleigh fading, which can cause large blocks of information to be lost.
Digital modulation techniques can be used to improve the wireless communication link by providing greater noise immunity and robustness. In certain systems, the data to be transmitted over the wireless communication link can be represented or encoded as a time sequence of symbols, where each symbol has M finite states, and each symbol represents n bits of information. Digital modulation involves choosing a particular code symbol from the M finite code symbols based on the data bits of information applied to the modulator. For M-ary keying schemes, log2M bits of information can be represented or encoded by M different codes or code symbols of at least M chips long. The codes are transmitted and received as several delayed replicas of the transmitted codes, and the receiver correlates the delayed versions of the received codes with the known codes.
Autocorrelation sidelobes show the correlation values between the known codes and the time shifted replicas of the received codes. For example, for a code (111-1), the autocorrelation for a zero shift is:
code1 1 1 −1shifted code1 1 1 −1multiplication1 1 1  1correlation = sum of multiplied values = 4.For a shift of one chip, the autocorrelation is:
code1 1 1 −1shifted code  1 1  1 −1multiplication  1 1 −1correlation = sum of multiplied values = 1.For a shift of 2 chips, the autocorrelation is:
code1 1 1 −1shifted code   1   1 1 −1multiplication   1 −1correlation = sum of multiplied values = 0.For a shift of 3 chips, the autocorrelation is:
code1 1 1 −1shifted code   1 1 1 −1multiplication   −1correlation = sum of multiplied values = −1.Larger shifts give an autocorrelation value of zero, so the maximum autocorrelation sidelobe in this example has a value or magnitude of 1. In this example, −1's are used in the receiver instead of 0's. The autocorrelation sidelobes give an indication about multipath performance. If the autocorrelation sidelobes are large, several multipath components heavily interfere with each other. Cross-correlation refers to a code being correlated with different codes. As such, if the cross-correlation between codes is high, then the different codes will interfere with each other.
M-ary orthogonal keying is a form of digital modulation which provides good cross-correlation between codes by encoding data using orthogonal codes which do not interfere with each other. FIG. 1 shows a general block diagram of an M-ary orthogonal keying system 10. In this example, input data is scrambled by a scrambler 12 as specified in the current (1997) Institute of Electrical and Electronics Engineers (IEEE) 802.11 standard. The data is then provided to a serial-to-parallel converter 14 which converts the serial data into 8 parallel bits forming a data symbol. A first modulator 16 receives three (3) of the parallel bits and produces a code of length 8 chips from a look-up table, and a second modulator 18 receives three (3) of the parallel bits and produces a second code of length 8 from a look-up table. Chips are actually code bits, but they are called chips to distinguish them from data bits. In this implementation, one of the parallel bits is provided to a first exclusive-or (XOR) gate 20 which inverts the code from the first modulator if the bit has a value of one. Similarly, the last remaining bit is provided to a second XOR gate 22 which inverts the code from the second modulator 18 if the bit has a value of one. In this embodiment, the output Iout of the XOR gate 20 is applied to signal circuitry 21 to convert all 0's to −1's for transmission. The circuitry 21 can also manipulate, convert and/or process Iout before being used to modulate a carrier with frequency ω by mixer 24. The output Qout from the XOR 22 is applied to signal circuitry 23 to convert all 0's into −1's for transmission. The circuitry 23 can manipulate, convert and/or process Qout before being used to modulate a 90 degrees shifted carrier by mixer 26. In this particular embodiment, the first modulator 16 corresponds to the in-phase (I) component of the output signal, and the second modulator 18 corresponds to the quadrature (Q) component of the output signal.
In the system, the modulators 16 and 18 are performing 8-ary orthogonal keying or encoding because each receive 3 bits of information and chooses one out of 8 orthogonal codes. By having both I and Q components with different polarities, a total of 256 possible code combinations exist, so a total of 8 bits can be encoded into one orthogonal code. The code set in the 8-ary orthogonal keying system is based on eight (8) Walsh codes of 8 chips in length. Using the 8 chip Walsh codes in an M-ary orthogonal keying (MOK) system is advantageous because the 8 chip Walsh codes are orthogonal, which means they exhibit zero cross-correlation, so the 8 chip Walsh codes tend to be easily distinguishable from each other. However, using the 8 chip Walsh codes reduces the coding gain for the system of FIG. 1 to below 10, and the United States Federal Communications Commission (FCC) requires a processing gain of at least 10 for transmission systems operating in the 2.4 GHz Industrial, Scientific and Medical (ISM) band. Processing gain can be simply measured by the number of chips per code symbol. For the MOK system to achieve a processing gain of at least 10, the code length should be at least 10 chips. However, if the MOK system is designed for code lengths of 10 chips or more, the data rate drops to less than 10 Mbps.
Another M-ary keying scheme encodes data bits using a Barker code (like used for the IEEE 802.11 standard for 1 and 2 Mbit/s). The operation is similar to the previously described MOK system with length 8 codes, except that the code length for the non-orthogonal Barker sequences is 11. By choosing one out of 8 time shifted Barker codes of length 11 chips for the in-phase and quadrature components and changing polarities, a total of 8 bits per symbol can be encoded. However, a symbol now consists of 11 chips instead of 8, so for the same chip rate the effective data rate is a factor 8/11 lower. This means that with code lengths of 10 chips or more, you cannot achieve a data rate of 10 Mbps or more as in the case of length 8 codes.